<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      // 特殊符号
      // 1 ():分组；
      // var str  = "abcbc12123";
      // var reg = /^a(bc){2}\d+$/;
      // console.log(reg.test(str));

      // var reg = /{{(\w+)}}(\d+)/;
      // var str = "fdsafdsa{{message}}3232";
      // console.log(reg.test(str));
      // // 获取分组里具体的内容；
      // var one = RegExp.$1;
      // console.log(one);
      // var two = RegExp.$2;
      // console.log(two);

      // 2. | 在正则里表示或者关系；
      // || &&
      // var reg = /a|b/;
      // var str  = "fdafdgdf";
      // console.log( reg.test(str));

      // 3.[]:集合
      // []:代表一个字符；
      // 内部是或者关系；
      // var reg = /^[abc]\d+\w$/;
      // var str = "a878d";
      // console.log( reg.test(str));

      // 集合可以表示范围  -  范围是根据 ASSCI 来排列的 ；ASSCI 要连续；
      // var reg = /^[0-9]\w+[0-9]$/

      // var str = "3fdsf5";
      // console.log(reg.test(str));

      // var reg = /[a-zA-Z0-9_]/   // [a-zA-Z0-9_]  === \w
      // var str = "d";
      // console.log(reg.test(str));

      // var reg = /^[1-30]\w+\d$/;   // [1-30]  === 1-3 或者是0
      // var str = "4jkljl8";
      // console.log(reg.test(str));

      //4. 集合表示否  ：集合里的^代表否
      // var reg = /^[^abc]\d+/;
      // var str = "a90880";
      // console.log(reg.test(str));

      // 匹配所有字符 .
      var reg = /[\w\W]+/;
      // 匹配 0-255之间的数字；
      var reg = /^(25[0-5]$|^2[0-4][0-9]$|^[0-1]?[0-9]?[0-9])$/;
      var str = "252";
      console.log(reg.test(str));
    </script>
  </body>
</html>
